

$(function () {
    //参数声明全局变量
    let perpages = {
        key: '',	//搜索关键词，可以为空，为空返回某类型所有文章
        type: '',	//文章类型id，可以为空，为空返回所有类型文章
        state: '',  //文章状态，草稿 ，已发布, 为空返回所有状态文章
        page: '',   //当前页，为空返回第1页
        perpage: ''	//每页显示条数，为空默认每页6条
    }

    //封装渲染函数
    //调用函数
    myarticle()
    function myarticle() {
        $.ajax({
            url: 'http://localhost:8080/api/v1/admin/article/query',
            type: 'get',
            //把接收下面传上来的对象进行渲染
            data: perpages,
            headers: {  //请求头
                //获取用户数据要带着token过去
                Authorization: localStorage.getItem('token')
            },
            success: function (res) {
                console.log(res);

                let html = template('add', res)
                $('tbody').html(html)
                // 获取数据总数
                let totalCount = res.data.totalCount
                //获取完到数据才能再渲染分页组件
                mylayui(totalCount)


            }


        })
    }

    //所有文章类别生成
    $.ajax({
        url: 'http://localhost:8080/api/v1/admin/category/list',
        headers: {  //请求头
            //获取用户数据要带着token过去
            Authorization: localStorage.getItem('token')
        },
        success: function (res) {
            console.log(res);
            let selCategory = template('classify', res)
            $('#selCategory').html(selCategory)
        }
    })
    //分页组件渲染
    function mylayui(totalCount) {
        var laypage = layui.laypage;
        //执行一个laypage实例
        laypage.render({
            elem: 'pager', //注意，这里的 test1 是 ID，不用加 # 号
            count: totalCount, //数据总数必能写死，从服务端得到
            curr: perpages.page,  //全局变量默认值1
            jump: function (obj, first) {

                //首次不执行
                if (!first) {
                    console.log(obj);
                    //do something
                    // console.log('我执行了');
                    //obj.curr 就是分页的码数
                    perpages.page = obj.curr /* 点击获取对应的页码赋值给page,
                    上面渲染函数接收到对象就行数据的渲染 */
                    //渲染总数据 就会再次调用分页函数进行渲染
                    myarticle()


                }
            }
        });

    }


    //筛选绑定事件

    $('.btn-success').on('click', function () {

        //获取input 输入框内容
        let key = $('#aname').val().trim()
        // console.log(1);
        //文章类型id
        let selCategory = $('#selCategory').val()
        //文章状态
        let state = $('#selStatus').val()
        console.log(selCategory);
        //给全局变量重新赋值
        perpages.key = key
        perpages.type = selCategory
        perpages.state = state
        //点击筛选跳回第一页重置功能
        perpages.page = 1

        //再次调用渲染函数进行页面渲染
        myarticle()


    })


    //重置绑定事件
    $('.btndel').on('click', function () {
        $("#selCategory option:first").prop("selected", 'selected');
        $("#selStatus option:first").prop("selected", 'selected');
        //重置全部清空参数返回所有数据重新渲染
        perpages.key = ''
        perpages.type = ''
        perpages.state = ''
        //点击重置会重置数据并返回第一个页码
        perpages.page = 1
        $('#aname').val('')
        //调用渲染函数
        myarticle()



    })


    //删除绑定事件
    $('.table').on('click', '.delete', function () {
        let id = $(this).data('id')
        layer.confirm('是否删除', function (index) {

            $.ajax({

                url: 'http://localhost:8080/api/v1/admin/article/delete',
                type: 'post',
                headers: {  //请求头
                    //获取用户数据要带着token过去
                    Authorization: localStorage.getItem('token')
                },
                data: { id: id },
                success: function (res) {
                    console.log(res);
                    myarticle()

                }
            })

            layer.close(index);
        });





    })

})